package com.chris.datacnter.config;

import org.springframework.boot.web.server.ConfigurableWebServerFactory;
import org.springframework.boot.web.server.ErrorPage;
import org.springframework.boot.web.server.WebServerFactoryCustomizer;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.http.HttpStatus;

/**
 * 错误页处理config
 */
@Configuration
public class errorPageConfig {

    /**
    * 两个 mpato 之一， 一个是这个，一个是
     * （1）Mapped to org.springframework.boot.autoconfigure.web.servlet.error.BasicErrorController#errorHtml(HttpServletRequest, HttpServletResponse)
     * （2）Mapped to com.chris.Controller.HelloWorldController#error1()
     * 具体运行机制没搞懂，重新刷新，调用第一个（1），直接获取资源（JPG得到第二）
     */

  @Bean
  public WebServerFactoryCustomizer<ConfigurableWebServerFactory> webServerFactoryCustomizer()
  {


    return  container  -> {
      ErrorPage error404Page = new ErrorPage(HttpStatus.NOT_FOUND,"/errorPage");
     // ErrorPage error500Page = new ErrorPage(HttpStatus.INTERNAL_SERVER_ERROR,"/servererror");
      container.addErrorPages(error404Page);//,error500Page


     // container.setPort(9093);


    };
  }

}
